home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SGI Freeware 1999 November
/
SGI Freeware 1999 November - Disc 1.iso
/
dist
/
fw_cvs.idb
/
usr
/
freeware
/
catman
/
u_man
/
cat1
/
cvs.Z
/
cvs
Wrap
Text File
|
1999-04-16
|
94KB
|
1,849 lines
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
NNNNAAAAMMMMEEEE
cvs - Concurrent Versions System
SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
ccccvvvvssss [ _c_v_s__o_p_t_i_o_n_s ]
_c_v_s__c_o_m_m_a_n_d [ _c_o_m_m_a_n_d__o_p_t_i_o_n_s ] [ _c_o_m_m_a_n_d__a_r_g_s ]
NNNNOOOOTTTTEEEE
This manpage is a summary of some of the features of ccccvvvvssss but
for more in-depth documentation, consult the Cederqvist
manual (as described in the SEE ALSO section of this
manpage).
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
CVS is a version control system, which allows you to keep
old versions of files (usually source code), keep a log of
who, when, and why changes occurred, etc., like RCS or SCCS.
Unlike the simpler systems, CVS does not just operate on one
file at a time or one directory at a time, but operates on
hierarchical collections of directories consisting of
version controlled files. CVS helps to manage releases and
to control the concurrent editing of source files among
multiple authors. CVS allows triggers to enable/log/control
various operations and works well over a wide area network.
ccccvvvvssss keeps a single copy of the master sources. This copy is
called the source ``repository''; it contains all the
information to permit extracting previous software releases
at any time based on either a symbolic revision tag, or a
date in the past.
EEEESSSSSSSSEEEENNNNTTTTIIIIAAAALLLL CCCCOOOOMMMMMMMMAAAANNNNDDDDSSSS
ccccvvvvssss provides a rich variety of commands (_c_v_s__c_o_m_m_a_n_d in the
Synopsis), each of which often has a wealth of options, to
satisfy the many needs of source management in distributed
environments. However, you don't have to master every
detail to do useful work with ccccvvvvssss; in fact, five commands
are sufficient to use (and contribute to) the source
repository.
ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt _m_o_d_u_l_e_s...
A necessary preliminary for most ccccvvvvssss work: creates your
private copy of the source for _m_o_d_u_l_e_s (named
collections of source; you can also use a path relative
to the source repository here). You can work with this
copy without interfering with others' work. At least
one subdirectory level is always created.
ccccvvvvssss uuuuppppddddaaaatttteeee
Execute this command from _w_i_t_h_i_n your private source
directory when you wish to update your copies of source
files from changes that other developers have made to
Page 1 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
the source in the repository.
ccccvvvvssss aaaadddddddd _f_i_l_e...
Use this command to enroll new files in ccccvvvvssss records of
your working directory. The files will be added to the
repository the next time you run `ccccvvvvssss ccccoooommmmmmmmiiiitttt'. Note:
You should use the `ccccvvvvssss iiiimmmmppppoooorrrrtttt' command to bootstrap
new sources into the source repository. `ccccvvvvssss aaaadddddddd' is
only used for new files to an already checked-out
module.
ccccvvvvssss rrrreeeemmmmoooovvvveeee _f_i_l_e...
Use this command (after erasing any files listed) to
declare that you wish to eliminate files from the
repository. The removal does not affect others until
you run `ccccvvvvssss ccccoooommmmmmmmiiiitttt'.
ccccvvvvssss ccccoooommmmmmmmiiiitttt _f_i_l_e...
Use this command when you wish to ``publish'' your
changes to other developers, by incorporating them in
the source repository.
OOOOPPPPTTTTIIIIOOOONNNNSSSS
The ccccvvvvssss command line can include _c_v_s__o_p_t_i_o_n_s, which apply to
the overall ccccvvvvssss program; a _c_v_s__c_o_m_m_a_n_d, which specifies a
particular action on the source repository; and
_c_o_m_m_a_n_d__o_p_t_i_o_n_s and _c_o_m_m_a_n_d__a_r_g_u_m_e_n_t_s to fully specify what
the _c_v_s__c_o_m_m_a_n_d will do.
_W_a_r_n_i_n_g: you must be careful of precisely where you place
options relative to the _c_v_s__c_o_m_m_a_n_d. The same option can
mean different things depending on whether it is in the
_c_v_s__o_p_t_i_o_n_s position (to the left of a ccccvvvvssss command) or in
the _c_o_m_m_a_n_d__o_p_t_i_o_n_s position (to the right of a ccccvvvvssss
command).
There are only two situations where you may omit
_c_v_s__c_o_m_m_a_n_d: `ccccvvvvssss ----HHHH' or `ccccvvvvssss --------hhhheeeellllpppp' elicits a list of
available commands, and `ccccvvvvssss ----vvvv' or `ccccvvvvssss --------vvvveeeerrrrssssiiiioooonnnn' displays
version information on ccccvvvvssss itself.
CCCCVVVVSSSS OOOOPPPPTTTTIIIIOOOONNNNSSSS
As of release 1.6, ccccvvvvssss supports GNU style long options as
well as short options. Only a few long options are
currently supported, these are listed in brackets after the
short options whose functions they duplicate.
Use these options to control the overall ccccvvvvssss program:
----HHHH [[[[ --------hhhheeeellllpppp ]]]]
Display usage information about the specified
Page 2 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
_c_v_s__c_o_m_m_a_n_d (but do not actually execute the command).
If you don't specify a command name, `ccccvvvvssss ----HHHH' displays
a summary of all the commands available.
----QQQQ Causes the command to be _r_e_a_l_l_y quiet; the command will
generate output only for serious problems.
----qqqq Causes the command to be somewhat quiet; informational
messages, such as reports of recursion through
subdirectories, are suppressed.
----bbbb _b_i_n_d_i_r
Use _b_i_n_d_i_r as the directory where RCS programs are
located (CVS 1.9 and older). Overrides the setting of
the RCSBIN environment variable. This value should be
specified as an absolute pathname.
----dddd _C_V_S__r_o_o_t__d_i_r_e_c_t_o_r_y
Use _C_V_S__r_o_o_t__d_i_r_e_c_t_o_r_y as the root directory pathname
of the master source repository. Overrides the setting
of the CVSROOT environment variable. This value should
be specified as an absolute pathname.
----eeee _e_d_i_t_o_r
Use _e_d_i_t_o_r to enter revision log information.
Overrides the setting of the CVSEDITOR and the EDITOR
environment variables.
----ffff Do not read the ccccvvvvssss startup file (~/._c_v_s_r_c).
----llll Do not log the _c_v_s__c_o_m_m_a_n_d in the command history (but
execute it anyway). See the description of the hhhhiiiissssttttoooorrrryyyy
command for information on command history.
----nnnn Do not change any files. Attempt to execute the
_c_v_s__c_o_m_m_a_n_d, but only to issue reports; do not remove,
update, or merge any existing files, or create any new
files.
----tttt Trace program execution; display messages showing the
steps of ccccvvvvssss activity. Particularly useful with ----nnnn to
explore the potential impact of an unfamiliar command.
----rrrr Makes new working files read-only. Same effect as if
the CVSREAD environment variable is set.
----vvvv [[[[ --------vvvveeeerrrrssssiiiioooonnnn ]]]]
Displays version and copyright information for ccccvvvvssss.
----wwww Makes new working files read-write (default).
Overrides the setting of the CVSREAD environment
variable.
Page 3 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
----xxxx Encrypt all communication between the client and the
server. As of this writing, this is only implemented
when using a Kerberos connection.
----zzzz _c_o_m_p_r_e_s_s_i_o_n-_l_e_v_e_l
When transferring files across the network use ggggzzzziiiipppp
with compression level _c_o_m_p_r_e_s_s_i_o_n-_l_e_v_e_l to compress
and de-compress data as it is transferred. Requires
the presence of the GNU ggggzzzziiiipppp program in the current
search path at both ends of the link.
UUUUSSSSAAAAGGGGEEEE
Except when requesting general help with `ccccvvvvssss ----HHHH', you must
specify a _c_v_s__c_o_m_m_a_n_d to ccccvvvvssss to select a specific release
control function to perform. Each ccccvvvvssss command accepts its
own collection of options and arguments. However, many
options are available across several commands. You can
display a usage summary for each command by specifying the
----HHHH option with the command.
CCCCVVVVSSSS SSSSTTTTAAAARRRRTTTTUUUUPPPP FFFFIIIILLLLEEEE
Normally, when CVS starts up, it reads the ._c_v_s_r_c file from
the home directory of the user reading it. This startup
procedure can be turned off with the ----ffff flag.
The ._c_v_s_r_c file lists CVS commands with a list of arguments,
one command per line. For example, the following line in
._c_v_s_r_c:
diff -c
will mean that the `ccccvvvvssss ddddiiiiffffffff' command will always be passed
the -c option in addition to any other options that are
specified in the command line (in this case it will have the
effect of producing context sensitive diffs for all
executions of `ccccvvvvssss ddddiiiiffffffff' ).
CCCCVVVVSSSS CCCCOOOOMMMMMMMMAAAANNNNDDDD SSSSUUUUMMMMMMMMAAAARRRRYYYY
Here are brief descriptions of all the ccccvvvvssss commands:
aaaadddddddd Add a new file or directory to the repository, pending
a `ccccvvvvssss ccccoooommmmmmmmiiiitttt' on the same file. Can only be done from
within sources created by a previous `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt'
invocation. Use `ccccvvvvssss iiiimmmmppppoooorrrrtttt' to place whole new
hierarchies of sources under ccccvvvvssss control. (Does not
directly affect repository; changes working directory.)
aaaaddddmmmmiiiinnnn
Execute control functions on the source repository.
(Changes repository directly; uses working directory
without changing it.)
Page 4 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
cccchhhheeeecccckkkkoooouuuutttt
Make a working directory of source files for editing.
(Creates or changes working directory.)
ccccoooommmmmmmmiiiitttt
Apply to the source repository changes, additions, and
deletions from your working directory. (Changes
repository.)
ddddiiiiffffffff Show differences between files in working directory and
source repository, or between two revisions in source
repository. (Does not change either repository or
working directory.)
eeeexxxxppppoooorrrrtttt
Prepare copies of a set of source files for shipment
off site. Differs from `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt' in that no ccccvvvvssss
administrative directories are created (and therefore
`ccccvvvvssss ccccoooommmmmmmmiiiitttt' cannot be executed from a directory
prepared with `ccccvvvvssss eeeexxxxppppoooorrrrtttt'), and a symbolic tag must be
specified. (Does not change repository; creates
directory similar to working directories).
hhhhiiiissssttttoooorrrryyyy
Show reports on ccccvvvvssss commands that you or others have
executed on a particular file or directory in the
source repository. (Does not change repository or
working directory.) History logs are kept only if
enabled by creation of the `$$$$CCCCVVVVSSSSRRRROOOOOOOOTTTT////CCCCVVVVSSSSRRRROOOOOOOOTTTT////hhhhiiiissssttttoooorrrryyyy'
file; see ccccvvvvssss(5555).
iiiimmmmppppoooorrrrtttt
Incorporate a set of updates from off-site into the
source repository, as a ``vendor branch''. (Changes
repository.)
lllloooogggg Display log information. (Does not change repository
or working directory.)
rrrrddddiiiiffffffff
Prepare a collection of diffs as a patch file between
two releases in the repository. (Does not change
repository or working directory.)
rrrreeeelllleeeeaaaasssseeee
Cancel a `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt', abandoning any changes. (Can
delete working directory; no effect on repository.)
rrrreeeemmmmoooovvvveeee
Remove files from the source repository, pending a `ccccvvvvssss
ccccoooommmmmmmmiiiitttt' on the same files. (Does not directly affect
repository; changes working directory.)
Page 5 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
rrrrttttaaaagggg Explicitly specify a symbolic tag for particular
revisions of files in the source repository. See also
`ccccvvvvssss ttttaaaagggg'. (Changes repository directly; does not
require or affect working directory.)
ssssttttaaaattttuuuussss
Show current status of files: latest version, version
in working directory, whether working version has been
edited and, optionally, symbolic tags in the RCS file.
(Does not change repository or working directory.)
ttttaaaagggg Specify a symbolic tag for files in the repository. By
default, tags the revisions that were last synchronized
with your working directory. (Changes repository
directly; uses working directory without changing it.)
uuuuppppddddaaaatttteeee
Bring your working directory up to date with changes
from the repository. Merges are performed
automatically when possible; a warning is issued if
manual resolution is required for conflicting changes.
(Changes working directory; does not change
repository.)
CCCCOOOOMMMMMMMMOOOONNNN CCCCOOOOMMMMMMMMAAAANNNNDDDD OOOOPPPPTTTTIIIIOOOONNNNSSSS
This section describes the _c_o_m_m_a_n_d__o_p_t_i_o_n_s that are
available across several ccccvvvvssss commands. Not all commands
support all of these options; each option is only supported
for commands where it makes sense. However, when a command
has one of these options you can count on the same meaning
for the option as in other commands. (Other command
options, which are listed with the individual commands, may
have different meanings from one ccccvvvvssss command to another.)
_W_a_r_n_i_n_g: the hhhhiiiissssttttoooorrrryyyy command is an exception; it supports
many options that conflict even with these standard options.
----DDDD _d_a_t_e__s_p_e_c
Use the most recent revision no later than _d_a_t_e__s_p_e_c (a
single argument, date description specifying a date in
the past). A wide variety of date formats are
supported, in particular ISO ("1972-09-24 20:05") or
Internet ("24 Sep 1972 20:05"). The _d_a_t_e__s_p_e_c is
interpreted as being in the local timezone, unless a
specific timezone is specified. The specification is
``sticky'' when you use it to make a private copy of a
source file; that is, when you get a working file using
----DDDD, ccccvvvvssss records the date you specified, so that further
updates in the same directory will use the same date
(unless you explicitly override it; see the description
of the uuuuppppddddaaaatttteeee command). ----DDDD is available with the
cccchhhheeeecccckkkkoooouuuutttt, ddddiiiiffffffff, hhhhiiiissssttttoooorrrryyyy, rrrrddddiiiiffffffff, rrrrttttaaaagggg, and uuuuppppddddaaaatttteeee
commands. Examples of valid date specifications
Page 6 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
include:
1111 mmmmoooonnnntttthhhh aaaaggggoooo
2222 hhhhoooouuuurrrrssss aaaaggggoooo
444400000000000000000000 sssseeeeccccoooonnnnddddssss aaaaggggoooo
llllaaaasssstttt yyyyeeeeaaaarrrr
llllaaaasssstttt MMMMoooonnnnddddaaaayyyy
yyyyeeeesssstttteeeerrrrddddaaaayyyy
aaaa ffffoooorrrrttttnnnniiiigggghhhhtttt aaaaggggoooo
3333////33331111////99992222 11110000::::00000000::::00007777 PPPPSSSSTTTT
JJJJaaaannnnuuuuaaaarrrryyyy 22223333,,,, 1111999988887777 11110000::::00005555ppppmmmm
22222222::::00000000 GGGGMMMMTTTT
----ffff When you specify a particular date or tag to ccccvvvvssss
commands, they normally ignore files that do not
contain the tag (or did not exist on the date) that you
specified. Use the ----ffff option if you want files
retrieved even when there is no match for the tag or
date. (The most recent version is used in this
situation.) ----ffff is available with these commands:
cccchhhheeeecccckkkkoooouuuutttt, eeeexxxxppppoooorrrrtttt, rrrrddddiiiiffffffff, rrrrttttaaaagggg, and uuuuppppddddaaaatttteeee.
----HHHH Help; describe the options available for this command.
This is the only option supported for _a_l_l ccccvvvvssss commands.
----kkkk _k_f_l_a_g
Alter the default processing of keywords. The ----kkkk
option is available with the aaaadddddddd, cccchhhheeeecccckkkkoooouuuutttt, ddddiiiiffffffff,
rrrrddddiiiiffffffff, and uuuuppppddddaaaatttteeee commands. Your _k_f_l_a_g specification
is ``sticky'' when you use it to create a private copy
of a source file; that is, when you use this option
with the cccchhhheeeecccckkkkoooouuuutttt or uuuuppppddddaaaatttteeee commands, ccccvvvvssss associates
your selected _k_f_l_a_g with the file, and continues to use
it with future uuuuppppddddaaaatttteeee commands on the same file until
you specify otherwise.
Some of the more useful _k_f_l_a_gs are -ko and -kb (for
binary files), and -kv which is useful for an eeeexxxxppppoooorrrrtttt
where you wish to retain keyword information after an
iiiimmmmppppoooorrrrtttt at some other site.
----llll Local; run only in current working directory, rather
than recurring through subdirectories. Available with
the following commands: cccchhhheeeecccckkkkoooouuuutttt, ccccoooommmmmmmmiiiitttt, ddddiiiiffffffff,
eeeexxxxppppoooorrrrtttt, rrrreeeemmmmoooovvvveeee, rrrrddddiiiiffffffff, ssssttttaaaattttuuuussss, ttttaaaagggg, and uuuuppppddddaaaatttteeee.
_W_a_r_n_i_n_g: this is not the same as the overall `ccccvvvvssss ----llll'
option, which you can specify to the _l_e_f_t of a ccccvvvvssss
command!
----nnnn Do _n_o_t run any cccchhhheeeecccckkkkoooouuuutttt/ccccoooommmmmmmmiiiitttt/ttttaaaagggg/ program. (A
program can be specified to run on each of these
activities, in the modules database; this option
bypasses it.) Available with the cccchhhheeeecccckkkkoooouuuutttt, ccccoooommmmmmmmiiiitttt,
Page 7 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
eeeexxxxppppoooorrrrtttt, and rrrrttttaaaagggg commands. _W_a_r_n_i_n_g: this is not the
same as the overall `ccccvvvvssss ----nnnn' option, which you can
specify to the _l_e_f_t of a ccccvvvvssss command!
----PPPP Prune (remove) directories that are empty after being
updated, on cccchhhheeeecccckkkkoooouuuutttt, or uuuuppppddddaaaatttteeee. Normally, an empty
directory (one that is void of revision-controlled
files) is left alone. Specifying ----PPPP will cause these
directories to be silently removed from your checked-
out sources. This does not remove the directory from
the repository, only from your checked out copy. Note
that this option is implied by the ----rrrr or ----DDDD options of
cccchhhheeeecccckkkkoooouuuutttt and eeeexxxxppppoooorrrrtttt.
----pppp Pipe the files retrieved from the repository to
standard output, rather than writing them in the
current directory. Available with the cccchhhheeeecccckkkkoooouuuutttt and
uuuuppppddddaaaatttteeee commands.
----rrrr _t_a_g
Use the revision specified by the _t_a_g argument instead
of the default ``head'' revision. As well as arbitrary
tags defined with the ttttaaaagggg or rrrrttttaaaagggg command, two special
tags are always available: `HHHHEEEEAAAADDDD' refers to the most
recent version available in the repository, and `BBBBAAAASSSSEEEE'
refers to the revision you last checked out into the
current working directory.
The _t_a_g specification is ``sticky'' when you use this
option with `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt' or `ccccvvvvssss uuuuppppddddaaaatttteeee' to make your
own copy of a file: ccccvvvvssss remembers the _t_a_g and continues
to use it on future uuuuppppddddaaaatttteeee commands, until you specify
otherwise. _t_a_g can be either a symbolic or numeric
tag. Specifying the ----qqqq global option along with the ----rrrr
command option is often useful, to suppress the warning
messages when the RCS file does not contain the
specified tag. ----rrrr is available with the cccchhhheeeecccckkkkoooouuuutttt,
ccccoooommmmmmmmiiiitttt, ddddiiiiffffffff, hhhhiiiissssttttoooorrrryyyy, eeeexxxxppppoooorrrrtttt, rrrrddddiiiiffffffff, rrrrttttaaaagggg, and uuuuppppddddaaaatttteeee
commands. _W_a_r_n_i_n_g: this is not the same as the overall
`ccccvvvvssss ----rrrr' option, which you can specify to the _l_e_f_t of a
ccccvvvvssss command!
CCCCVVVVSSSS CCCCOOOOMMMMMMMMAAAANNNNDDDDSSSS
Here (finally) are details on all the ccccvvvvssss commands and the
options each accepts. The summary lines at the top of each
command's description highlight three kinds of things:
Command Options and Arguments
Special options are described in detail below;
common command options may appear only in the
summary line.
Page 8 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
Working Directory, or Repository?
Some ccccvvvvssss commands require a working directory to
operate; some require a repository. Also, some
commands _c_h_a_n_g_e the repository, some change the
working directory, and some change nothing.
Synonyms
Many commands have synonyms, which you may find
easier to remember (or type) than the principal
name.
aaaadddddddd [----kkkk _k_f_l_a_g] [----mmmm ''''_m_e_s_s_a_g_e''''] _f_i_l_e_s...
_R_e_q_u_i_r_e_s: repository, working directory.
_C_h_a_n_g_e_s: working directory.
_S_y_n_o_n_y_m: nnnneeeewwww
Use the aaaadddddddd command to create a new file or directory
in the source repository. The files or directories
specified with aaaadddddddd must already exist in the current
directory (which must have been created with the
cccchhhheeeecccckkkkoooouuuutttt command). To add a whole new directory
hierarchy to the source repository (for example, files
received from a third-party vendor), use the `ccccvvvvssss
iiiimmmmppppoooorrrrtttt' command instead.
If the argument to `ccccvvvvssss aaaadddddddd' refers to an immediate
sub-directory, the directory is created at the correct
place in the source repository, and the necessary ccccvvvvssss
administration files are created in your working
directory. If the directory already exists in the
source repository, `ccccvvvvssss aaaadddddddd' still creates the
administration files in your version of the directory.
This allows you to use `ccccvvvvssss aaaadddddddd' to add a particular
directory to your private sources even if someone else
created that directory after your cccchhhheeeecccckkkkoooouuuutttt of the
sources. You can do the following:
eeeexxxxaaaammmmpppplllleeee%%%% mmmmkkkkddddiiiirrrr nnnneeeewwww____ddddiiiirrrreeeeccccttttoooorrrryyyy
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss aaaadddddddd nnnneeeewwww____ddddiiiirrrreeeeccccttttoooorrrryyyy
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss uuuuppppddddaaaatttteeee nnnneeeewwww____ddddiiiirrrreeeeccccttttoooorrrryyyy
An alternate approach using `ccccvvvvssss uuuuppppddddaaaatttteeee' might be:
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss uuuuppppddddaaaatttteeee ----dddd nnnneeeewwww____ddddiiiirrrreeeeccccttttoooorrrryyyy
(To add _a_n_y _a_v_a_i_l_a_b_l_e new directories to your working
directory, it's probably simpler to use `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt'
or `ccccvvvvssss uuuuppppddddaaaatttteeee ----dddd'.)
The added files are not placed in the source repository
until you use `ccccvvvvssss ccccoooommmmmmmmiiiitttt' to make the change
permanent. Doing a `ccccvvvvssss aaaadddddddd' on a file that was
removed with the `ccccvvvvssss rrrreeeemmmmoooovvvveeee' command will resurrect
Page 9 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
the file, if no `ccccvvvvssss ccccoooommmmmmmmiiiitttt' command intervened.
You will have the opportunity to specify a logging
message, as usual, when you use `ccccvvvvssss ccccoooommmmmmmmiiiitttt' to make
the new file permanent. If you'd like to have another
logging message associated with just _c_r_e_a_t_i_o_n of the
file (for example, to describe the file's purpose), you
can specify it with the `----mmmm _m_e_s_s_a_g_e' option to the aaaadddddddd
command.
The `----kkkk kkkkffffllllaaaagggg' option specifies the default way that
this file will be checked out. The `kkkkffffllllaaaagggg' argument is
stored in the RCS file and can be changed with `ccccvvvvssss
aaaaddddmmmmiiiinnnn'. Specifying `----kkkkoooo' is useful for checking in
binaries that shouldn't have keywords expanded.
aaaaddddmmmmiiiinnnn [_r_c_s-_o_p_t_i_o_n_s] _f_i_l_e_s...
_R_e_q_u_i_r_e_s: repository, working directory.
_C_h_a_n_g_e_s: repository.
_S_y_n_o_n_y_m: rrrrccccssss
This is the ccccvvvvssss interface to assorted administrative
facilities, similar to rrrrccccssss(1111). This command works
recursively, so extreme care should be used.
cccchhhheeeecccckkkkoooouuuutttt [ooooppppttttiiiioooonnnnssss] _m_o_d_u_l_e_s...
_R_e_q_u_i_r_e_s: repository.
_C_h_a_n_g_e_s: working directory.
_S_y_n_o_n_y_m_s: ccccoooo, ggggeeeetttt
Make a working directory containing copies of the
source files specified by _m_o_d_u_l_e_s. You must execute
`ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt' before using most of the other ccccvvvvssss
commands, since most of them operate on your working
directory.
_m_o_d_u_l_e_s are either symbolic names (themselves defined
as the module `mmmmoooodddduuuulllleeeessss' in the source repository; see
ccccvvvvssss(5555)) for some collection of source directories and
files, or paths to directories or files in the
repository.
Depending on the _m_o_d_u_l_e_s you specify, cccchhhheeeecccckkkkoooouuuutttt may
recursively create directories and populate them with
the appropriate source files. You can then edit these
source files at any time (regardless of whether other
software developers are editing their own copies of the
sources); update them to include new changes applied by
others to the source repository; or commit your work as
a permanent change to the repository.
Note that cccchhhheeeecccckkkkoooouuuutttt is used to create directories. The
top-level directory created is always added to the
directory where cccchhhheeeecccckkkkoooouuuutttt is invoked, and usually has
Page 10 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
the same name as the specified _m_o_d_u_l_e. In the case of
a _m_o_d_u_l_e alias, the created sub-directory may have a
different name, but you can be sure that it will be a
sub-directory, and that cccchhhheeeecccckkkkoooouuuutttt will show the relative
path leading to each file as it is extracted into your
private work area (unless you specify the ----QQQQ global
option).
Running `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt' on a directory that was already
built by a prior cccchhhheeeecccckkkkoooouuuutttt is also permitted, and has
the same effect as specifying the ----dddd option to the
uuuuppppddddaaaatttteeee command described below.
The _o_p_t_i_o_n_s permitted with `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt' include the
standard command options ----PPPP, ----ffff, ----kkkk _k_f_l_a_g , ----llll, ----nnnn, ----pppp,
----rrrr _t_a_g, and ----DDDD _d_a_t_e.
In addition to those, you can use these special command
options with cccchhhheeeecccckkkkoooouuuutttt:
Use the ----AAAA option to reset any sticky tags, dates, or
----kkkk options. (If you get a working file using one of
the ----rrrr, ----DDDD, or ----kkkk options, ccccvvvvssss remembers the
corresponding tag, date, or _k_f_l_a_g and continues using
it on future updates; use the ----AAAA option to make ccccvvvvssss
forget these specifications, and retrieve the ``head''
version of the file).
The ----jjjj _b_r_a_n_c_h option merges the changes made between
the resulting revision and the revision that it is
based on (e.g., if the tag refers to a branch, ccccvvvvssss will
merge all changes made in that branch into your working
file).
With two ----jjjj options, ccccvvvvssss will merge in the changes
between the two respective revisions. This can be used
to ``remove'' a certain delta from your working file.
In addition, each ----jjjj option can contain on optional
date specification which, when used with branches, can
limit the chosen revision to one within a specific
date. An optional date is specified by adding a colon
(:) to the tag. An example might be what `ccccvvvvssss iiiimmmmppppoooorrrrtttt'
tells you to do when you have just imported sources
that have conflicts with local changes:
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt ----jjjjTTTTAAAAGGGG::::yyyyeeeesssstttteeeerrrrddddaaaayyyy ----jjjjTTTTAAAAGGGG mmmmoooodddduuuulllleeee
Use the ----NNNN option with `----dddd _d_i_r' to avoid shortening
module paths in your working directory. (Normally,
ccccvvvvssss shortens paths as much as possible when you specify
an explicit target directory.)
Page 11 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
Use the ----cccc option to copy the module file, sorted, to
the standard output, instead of creating or modifying
any files or directories in your working directory.
Use the ----dddd _d_i_r option to create a directory called _d_i_r
for the working files, instead of using the module
name. Unless you also use ----NNNN, the paths created under
_d_i_r will be as short as possible.
Use the ----ssss option to display per-module status
information stored with the ----ssss option within the
modules file.
[_f_i_l_e_s...]
ccccoooommmmmmmmiiiitttt [----llllnnnnRRRR] [----mmmm '_l_o_g__m_e_s_s_a_g_e' | ----ffff _f_i_l_e] [----rrrr _r_e_v_i_s_i_o_n]
_R_e_q_u_i_r_e_s: working directory, repository.
_C_h_a_n_g_e_s: repository.
_S_y_n_o_n_y_m: cccciiii
Use `ccccvvvvssss ccccoooommmmmmmmiiiitttt' when you want to incorporate changes
from your working source files into the general source
repository.
If you don't specify particular _f_i_l_e_s to commit, all of
the files in your working current directory are
examined. ccccoooommmmmmmmiiiitttt is careful to change in the
repository only those files that you have really
changed. By default (or if you explicitly specify the
----RRRR option), files in subdirectories are also examined
and committed if they have changed; you can use the ----llll
option to limit ccccoooommmmmmmmiiiitttt to the current directory only.
Sometimes you may want to force a file to be committed
even though it is unchanged; this is achieved with the
----ffff flag, which also has the effect of disabling
recursion (you can turn it back on with ----RRRR of course).
ccccoooommmmmmmmiiiitttt verifies that the selected files are up to date
with the current revisions in the source repository; it
will notify you, and exit without committing, if any of
the specified files must be made current first with
`ccccvvvvssss uuuuppppddddaaaatttteeee'. ccccoooommmmmmmmiiiitttt does not call the uuuuppppddddaaaatttteeee command
for you, but rather leaves that for you to do when the
time is right.
When all is well, an editor is invoked to allow you to
enter a log message that will be written to one or more
logging programs and placed in the source repository
file. You can instead specify the log message on the
command line with the ----mmmm option, thus suppressing the
editor invocation, or use the ----FFFF option to specify that
the argument _f_i_l_e contains the log message.
The ----rrrr option can be used to commit to a particular
Page 12 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
symbolic or numeric revision. For example, to bring
all your files up to the revision ``3.0'' (including
those that haven't changed), you might do:
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss ccccoooommmmmmmmiiiitttt ----rrrr3333....0000
ccccvvvvssss will only allow you to commit to a revision that is
on the main trunk (a revision with a single dot).
However, you can also commit to a branch revision (one
that has an even number of dots) with the ----rrrr option.
To create a branch revision, one typically use the ----bbbb
option of the rrrrttttaaaagggg or ttttaaaagggg commands. Then, either
cccchhhheeeecccckkkkoooouuuutttt or uuuuppppddddaaaatttteeee can be used to base your sources on
the newly created branch. From that point on, all
ccccoooommmmmmmmiiiitttt changes made within these working sources will
be automatically added to a branch revision, thereby
not perturbing main-line development in any way. For
example, if you had to create a patch to the 1.2
version of the product, even though the 2.0 version is
already under development, you might do:
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss rrrrttttaaaagggg ----bbbb ----rrrrFFFFCCCCSSSS1111____2222 FFFFCCCCSSSS1111____2222____PPPPaaaattttcccchhhh pppprrrroooodddduuuucccctttt____mmmmoooodddduuuulllleeee
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt ----rrrrFFFFCCCCSSSS1111____2222____PPPPaaaattttcccchhhh pppprrrroooodddduuuucccctttt____mmmmoooodddduuuulllleeee
eeeexxxxaaaammmmpppplllleeee%%%% ccccdddd pppprrrroooodddduuuucccctttt____mmmmoooodddduuuulllleeee
[[[[[[[[ hhhhaaaacccckkkk aaaawwwwaaaayyyy ]]]]]]]]
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss ccccoooommmmmmmmiiiitttt
Say you have been working on some extremely
experimental software, based on whatever revision you
happened to checkout last week. If others in your
group would like to work on this software with you, but
without disturbing main-line development, you could
commit your change to a new branch. Others can then
checkout your experimental stuff and utilize the full
benefit of ccccvvvvssss conflict resolution. The scenario might
look like:
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss ttttaaaagggg ----bbbb EEEEXXXXPPPPRRRR1111
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss uuuuppppddddaaaatttteeee ----rrrrEEEEXXXXPPPPRRRR1111
[[[[[[[[ hhhhaaaacccckkkk aaaawwwwaaaayyyy ]]]]]]]]
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss ccccoooommmmmmmmiiiitttt
Others would simply do `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt ----rrrrEEEEXXXXPPPPRRRR1111
wwwwhhhhaaaatttteeeevvvveeeerrrr____mmmmoooodddduuuulllleeee' to work with you on the experimental
change.
_d_a_t_e_2]] [_f_i_l_e_s...]
ddddiiiiffffffff [----kkkkllll] [_r_c_s_d_i_f_f__o_p_t_i_o_n_s] [[----rrrr _r_e_v_1 | ----DDDD _d_a_t_e_1] [----rrrr _r_e_v_2 | ----DDDD
_R_e_q_u_i_r_e_s: working directory, repository.
_C_h_a_n_g_e_s: nothing.
You can compare your working files with revisions in
the source repository, with the `ccccvvvvssss ddddiiiiffffffff' command. If
Page 13 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
you don't specify a particular revision, your files are
compared with the revisions they were based on. You
can also use the standard ccccvvvvssss command option ----rrrr to
specify a particular revision to compare your files
with. Finally, if you use ----rrrr twice, you can see
differences between two revisions in the repository.
You can also specify ----DDDD options to diff against a
revision in the past. The ----rrrr and ----DDDD options can be
mixed together with at most two options ever specified.
See rrrrccccssssddddiiiiffffffff(1111) for a list of other accepted options.
If you don't specify any files, ddddiiiiffffffff will display
differences for all those files in the current
directory (and its subdirectories, unless you use the
standard option ----llll) that differ from the corresponding
revision in the source repository (i.e. files that _y_o_u
have changed), or that differ from the revision
specified.
eeeexxxxppppoooorrrrtttt [-ffffllllNNNNnnnnQQQQqqqq] ----rrrr _r_e_v|----DDDD _d_a_t_e [----dddd _d_i_r] [----kkkk _k_f_l_a_g] _m_o_d_u_l_e...
_R_e_q_u_i_r_e_s: repository.
_C_h_a_n_g_e_s: current directory.
This command is a variant of `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt'; use it
when you want a copy of the source for _m_o_d_u_l_e without
the ccccvvvvssss administrative directories. For example, you
might use `ccccvvvvssss eeeexxxxppppoooorrrrtttt' to prepare source for shipment
off-site. This command _r_e_q_u_i_r_e_s that you specify a
date or tag (with ----DDDD or ----rrrr), so that you can count on
reproducing the source you ship to others.
The only non-standard options are `----dddd _d_i_r' (write the
source into directory _d_i_r) and `----NNNN' (don't shorten
module paths). These have the same meanings as the
same options in `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt'.
The ----kkkkvvvv option is useful when eeeexxxxppppoooorrrrtttt is used. This
causes any keywords to be expanded such that an iiiimmmmppppoooorrrrtttt
done at some other site will not lose the keyword
revision information. Other _k_f_l_a_gs may be used with
`ccccvvvvssss eeeexxxxppppoooorrrrtttt' and are described in ccccoooo(1111).
hhhhiiiissssttttoooorrrryyyy [----_r_e_p_o_r_t] [----_f_l_a_g_s] [----_o_p_t_i_o_n_s _a_r_g_s] [_f_i_l_e_s...]
_R_e_q_u_i_r_e_s: the file `$$$$CCCCVVVVSSSSRRRROOOOOOOOTTTT////CCCCVVVVSSSSRRRROOOOOOOOTTTT////hhhhiiiissssttttoooorrrryyyy'
_C_h_a_n_g_e_s: nothing.
ccccvvvvssss keeps a history file that tracks each use of the
cccchhhheeeecccckkkkoooouuuutttt, ccccoooommmmmmmmiiiitttt, rrrrttttaaaagggg, uuuuppppddddaaaatttteeee, and rrrreeeelllleeeeaaaasssseeee commands.
You can use `ccccvvvvssss hhhhiiiissssttttoooorrrryyyy' to display this information
in various formats.
_W_a_r_n_i_n_g: `ccccvvvvssss hhhhiiiissssttttoooorrrryyyy' uses `----ffff', `----llll', `----nnnn', and `----pppp'
in ways that conflict with the descriptions in COMMON
Page 14 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
COMMAND OPTIONS.
Several options (shown above as ----_r_e_p_o_r_t) control what
kind of report is generated:
----cccc Report on each time ccccoooommmmmmmmiiiitttt was used (i.e., each
time the repository was modified).
----mmmm _m_o_d_u_l_e
Report on a particular _m_o_d_u_l_e. (You can
meaningfully use ----mmmm more than once on the command
line.)
----oooo Report on checked-out modules.
----TTTT Report on all tags.
----xxxx _t_y_p_e
Extract a particular set of record types _X from
the ccccvvvvssss history. The types are indicated by
single letters, which you may specify in
combination. Certain commands have a single
record type: cccchhhheeeecccckkkkoooouuuutttt (type `O'), rrrreeeelllleeeeaaaasssseeee (type
`F'), and rrrrttttaaaagggg (type `T'). One of four record
types may result from an uuuuppppddddaaaatttteeee: `W', when the
working copy of a file is deleted during update
(because it was gone from the repository); `U',
when a working file was copied from the
repository; `G', when a merge was necessary and it
succeeded; and 'C', when a merge was necessary but
collisions were detected (requiring manual
merging). Finally, one of three record types
results from ccccoooommmmmmmmiiiitttt: `M', when a file was
modified; `A', when a file is first added; and
`R', when a file is removed.
----eeee Everything (all record types); equivalent to
specifying `----xxxxMMMMAAAACCCCFFFFRRRROOOOGGGGWWWWUUUUTTTT'.
----zzzz _z_o_n_e
Use time zone _z_o_n_e when outputting history
records. The zone name LLLLTTTT stands for local time;
numeric offsets stand for hours and minutes ahead
of UTC. For example, ++++0000555533330000 stands for 5 hours and
30 minutes ahead of (i.e. east of) UTC.
The options shown as ----_f_l_a_g_s constrain the report
without requiring option arguments:
----aaaa Show data for all users (the default is to show
data only for the user executing `ccccvvvvssss hhhhiiiissssttttoooorrrryyyy').
Page 15 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
----llll Show last modification only.
----wwww Show only the records for modifications done from
the same working directory where `ccccvvvvssss hhhhiiiissssttttoooorrrryyyy' is
executing.
The options shown as ----_o_p_t_i_o_n_s _a_r_g_s constrain the report
based on an argument:
----bbbb _s_t_r
Show data back to a record containing the string
_s_t_r in either the module name, the file name, or
the repository path.
----DDDD _d_a_t_e
Show data since _d_a_t_e.
----pppp _r_e_p_o_s_i_t_o_r_y
Show data for a particular source repository (you
can specify several ----pppp options on the same command
line).
----rrrr _r_e_v
Show records referring to revisions since the
revision or tag named _r_e_v appears in individual
RCS files. Each RCS file is searched for the
revision or tag.
----tttt _t_a_g
Show records since tag _t_a_g was last added to the
history file. This differs from the ----rrrr flag above
in that it reads only the history file, not the
RCS files, and is much faster.
----uuuu _n_a_m_e
Show records for user _n_a_m_e.
iiiimmmmppppoooorrrrtttt [----_o_p_t_i_o_n_s] _r_e_p_o_s_i_t_o_r_y _v_e_n_d_o_r_t_a_g _r_e_l_e_a_s_e_t_a_g...
_R_e_q_u_i_r_e_s: Repository, source distribution directory.
_C_h_a_n_g_e_s: repository.
Use `ccccvvvvssss iiiimmmmppppoooorrrrtttt' to incorporate an entire source
distribution from an outside source (e.g., a source
vendor) into your source repository directory. You can
use this command both for initial creation of a
repository, and for wholesale updates to the module
form the outside source.
The _r_e_p_o_s_i_t_o_r_y argument gives a directory name (or a
path to a directory) under the CVS root directory for
repositories; if the directory did not exist, iiiimmmmppppoooorrrrtttt
creates it.
Page 16 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
When you use iiiimmmmppppoooorrrrtttt for updates to source that has been
modified in your source repository (since a prior
iiiimmmmppppoooorrrrtttt), it will notify you of any files that conflict
in the two branches of development; use `ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt
----jjjj' to reconcile the differences, as iiiimmmmppppoooorrrrtttt instructs
you to do.
By default, certain file names are ignored during `ccccvvvvssss
iiiimmmmppppoooorrrrtttt': names associated with CVS administration, or
with other common source control systems; common names
for patch files, object files, archive files, and
editor backup files; and other names that are usually
artifacts of assorted utilities. For an up to date
list of ignored file names, see the Cederqvist manual
(as described in the SEE ALSO section of this manpage).
The outside source is saved in a first-level branch, by
default `1111....1111....1111'. Updates are leaves of this branch;
for example, files from the first imported collection
of source will be revision `1111....1111....1111....1111', then files from
the first imported update will be revision `1111....1111....1111....2222',
and so on.
At least three arguments are required. _r_e_p_o_s_i_t_o_r_y is
needed to identify the collection of source. _v_e_n_d_o_r_t_a_g
is a tag for the entire branch (e.g., for `1111....1111....1111').
You must also specify at least one _r_e_l_e_a_s_e_t_a_g to
identify the files at the leaves created each time you
execute `ccccvvvvssss iiiimmmmppppoooorrrrtttt'.
One of the standard ccccvvvvssss command options is available:
----mmmm _m_e_s_s_a_g_e. If you do not specify a logging message
with ----mmmm, your editor is invoked (as with ccccoooommmmmmmmiiiitttt) to
allow you to enter one.
There are three additional special options.
Use `----dddd' to specify that each file's time of last
modification should be used for the checkin date and
time.
Use `----bbbb _b_r_a_n_c_h' to specify a first-level branch other
than `1111....1111....1111'.
Use `----IIII _n_a_m_e' to specify file names that should be
ignored during iiiimmmmppppoooorrrrtttt. You can use this option
repeatedly. To avoid ignoring any files at all (even
those ignored by default), specify `----IIII !!!!'.
lllloooogggg [----llll] _r_l_o_g-_o_p_t_i_o_n_s [_f_i_l_e_s...]
_R_e_q_u_i_r_e_s: repository, working directory.
_C_h_a_n_g_e_s: nothing.
Page 17 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
_S_y_n_o_n_y_m: rrrrlllloooogggg
Display log information for _f_i_l_e_s. Among the more
useful options are ----hhhh to display only the header
(including tag definitions, but omitting most of the
full log); ----rrrr to select logs on particular revisions or
ranges of revisions; and ----dddd to select particular dates
or date ranges. See rrrrlllloooogggg(1111) for full explanations.
This command is recursive by default, unless the ----llll
option is specified.
rrrrddddiiiiffffffff [----_f_l_a_g_s] [----VVVV _v_n] [----rrrr _t|----DDDD _d [----rrrr _t_2|----DDDD _d_2]] _m_o_d_u_l_e_s...
_R_e_q_u_i_r_e_s: repository.
_C_h_a_n_g_e_s: nothing.
_S_y_n_o_n_y_m: ppppaaaattttcccchhhh
Builds a Larry Wall format ppppaaaattttcccchhhh(1111) file between two
releases, that can be fed directly into the ppppaaaattttcccchhhh
program to bring an old release up-to-date with the new
release. (This is one of the few ccccvvvvssss commands that
operates directly from the repository, and doesn't
require a prior cccchhhheeeecccckkkkoooouuuutttt.) The diff output is sent to
the standard output device. You can specify (using the
standard ----rrrr and ----DDDD options) any combination of one or
two revisions or dates. If only one revision or date
is specified, the patch file reflects differences
between that revision or date and the current ``head''
revisions in the RCS file.
Note that if the software release affected is contained
in more than one directory, then it may be necessary to
specify the ----pppp option to the ppppaaaattttcccchhhh command when
patching the old sources, so that ppppaaaattttcccchhhh is able to find
the files that are located in other directories.
The standard option _f_l_a_g_s ----ffff, and ----llll are available with
this command. There are also several special options
flags:
If you use the ----ssss option, no patch output is produced.
Instead, a summary of the changed or added files
between the two releases is sent to the standard output
device. This is useful for finding out, for example,
which files have changed between two dates or
revisions.
If you use the ----tttt option, a diff of the top two
revisions is sent to the standard output device. This
is most useful for seeing what the last change to a
file was.
If you use the ----uuuu option, the patch output uses the
newer ``unidiff'' format for context diffs.
Page 18 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
You can use ----cccc to explicitly specify the `ddddiiiiffffffff ----cccc' form
of context diffs (which is the default), if you like.
rrrreeeelllleeeeaaaasssseeee [----ddddQQQQqqqq] _m_o_d_u_l_e_s...
_R_e_q_u_i_r_e_s: Working directory.
_C_h_a_n_g_e_s: Working directory, history log.
This command is meant to safely cancel the effect of
`ccccvvvvssss cccchhhheeeecccckkkkoooouuuutttt''''....' Since ccccvvvvssss doesn't lock files, it
isn't strictly necessary to use this command. You can
always simply delete your working directory, if you
like; but you risk losing changes you may have
forgotten, and you leave no trace in the ccccvvvvssss history
file that you've abandoned your checkout.
Use `ccccvvvvssss rrrreeeelllleeeeaaaasssseeee' to avoid these problems. This
command checks that no un-committed changes are
present; that you are executing it from immediately
above, or inside, a ccccvvvvssss working directory; and that the
repository recorded for your files is the same as the
repository defined in the module database.
If all these conditions are true, `ccccvvvvssss rrrreeeelllleeeeaaaasssseeee' leaves
a record of its execution (attesting to your
intentionally abandoning your checkout) in the ccccvvvvssss
history log.
You can use the ----dddd flag to request that your working
copies of the source files be deleted if the rrrreeeelllleeeeaaaasssseeee
succeeds.
rrrreeeemmmmoooovvvveeee [----llllRRRR] [_f_i_l_e_s...]
_R_e_q_u_i_r_e_s: Working directory.
_C_h_a_n_g_e_s: Working directory.
_S_y_n_o_n_y_m_s: rrrrmmmm, ddddeeeelllleeeetttteeee
Use this command to declare that you wish to remove
_f_i_l_e_s from the source repository. Like most ccccvvvvssss
commands, `ccccvvvvssss rrrreeeemmmmoooovvvveeee' works on files in your working
directory, not directly on the repository. As a
safeguard, it also requires that you first erase the
specified files from your working directory.
The files are not actually removed until you apply your
changes to the repository with ccccoooommmmmmmmiiiitttt; at that point,
the corresponding RCS files in the source repository
are _m_o_v_e_d into the `AAAAttttttttiiiicccc' directory (also within the
source repository).
This command is recursive by default, scheduling all
physically removed files that it finds for removal by
the next ccccoooommmmmmmmiiiitttt. Use the ----llll option to avoid this
recursion, or just specify that actual files that you
wish remove to consider.
Page 19 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
_m_o_d_u_l_e_s...
rrrrttttaaaagggg [----ffffaaaallllnnnnRRRRQQQQqqqq] [----bbbb] [----dddd] [----rrrr _t_a_g | ----DDDD _d_a_t_e] _s_y_m_b_o_l_i_c__t_a_g
_R_e_q_u_i_r_e_s: repository.
_C_h_a_n_g_e_s: repository.
_S_y_n_o_n_y_m: rrrrffffrrrreeeeeeeezzzzeeee
You can use this command to assign symbolic tags to
particular, explicitly specified source versions in the
repository. `ccccvvvvssss rrrrttttaaaagggg' works directly on the
repository contents (and requires no prior cccchhhheeeecccckkkkoooouuuutttt).
Use `ccccvvvvssss ttttaaaagggg' instead, to base the selection of
versions to tag on the contents of your working
directory.
In general, tags (often the symbolic names of software
distributions) should not be removed, but the ----dddd option
is available as a means to remove completely obsolete
symbolic names if necessary (as might be the case for
an Alpha release, say).
`ccccvvvvssss rrrrttttaaaagggg' will not move a tag that already exists.
With the ----FFFF option, however, `ccccvvvvssss rrrrttttaaaagggg' will re-locate
any instance of _s_y_m_b_o_l_i_c__t_a_g that already exists on
that file to the new repository versions. Without the
----FFFF option, attempting to use `ccccvvvvssss rrrrttttaaaagggg' to apply a tag
that already exists on that file will produce an error
message.
The ----bbbb option makes the tag a ``branch'' tag, allowing
concurrent, isolated development. This is most useful
for creating a patch to a previously released software
distribution.
You can use the standard ----rrrr and ----DDDD options to tag only
those files that already contain a certain tag. This
method would be used to rename a tag: tag only the
files identified by the old tag, then delete the old
tag, leaving the new tag on exactly the same files as
the old tag.
rrrrttttaaaagggg executes recursively by default, tagging all
subdirectories of _m_o_d_u_l_e_s you specify in the argument.
You can restrict its operation to top-level directories
with the standard ----llll option; or you can explicitly
request recursion with ----RRRR.
The modules database can specify a program to execute
whenever a tag is specified; a typical use is to send
electronic mail to a group of interested parties. If
you want to bypass that program, use the standard ----nnnn
option.
Use the ----aaaa option to have rrrrttttaaaagggg look in the `AAAAttttttttiiiicccc' for
Page 20 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
removed files that contain the specified tag. The tag
is removed from these files, which makes it convenient
to re-use a symbolic tag as development continues (and
files get removed from the up-coming distribution).
ssssttttaaaattttuuuussss [----llllRRRRqqqqQQQQ] [----vvvv] [_f_i_l_e_s...]
_R_e_q_u_i_r_e_s: working directory, repository.
_C_h_a_n_g_e_s: nothing.
Display a brief report on the current status of _f_i_l_e_s
with respect to the source repository, including any
``sticky'' tags, dates, or ----kkkk options. (``Sticky''
options will restrict how `ccccvvvvssss uuuuppppddddaaaatttteeee' operates until
you reset them; see the description of `ccccvvvvssss uuuuppppddddaaaatttteeee
----AAAA............'.)
You can also use this command to anticipate the
potential impact of a `ccccvvvvssss uuuuppppddddaaaatttteeee' on your working
source directory. If you do not specify any _f_i_l_e_s
explicitly, reports are shown for all files that ccccvvvvssss
has placed in your working directory. You can limit
the scope of this search to the current directory
itself (not its subdirectories) with the standard ----llll
option flag; or you can explicitly request recursive
status reports with the ----RRRR option.
The ----vvvv option causes the symbolic tags for the RCS file
to be displayed as well.
[_f_i_l_e_s...]
ttttaaaagggg [----llllQQQQqqqqRRRR] [----FFFF] [----bbbb] [----dddd] [----rrrr _t_a_g | ----DDDD _d_a_t_e] [----ffff] _s_y_m_b_o_l_i_c__t_a_g
_R_e_q_u_i_r_e_s: working directory, repository.
_C_h_a_n_g_e_s: repository.
_S_y_n_o_n_y_m: ffffrrrreeeeeeeezzzzeeee
Use this command to assign symbolic tags to the nearest
repository versions to your working sources. The tags
are applied immediately to the repository, as with
rrrrttttaaaagggg.
One use for tags is to record a ``snapshot'' of the
current sources when the software freeze date of a
project arrives. As bugs are fixed after the freeze
date, only those changed sources that are to be part of
the release need be re-tagged.
The symbolic tags are meant to permanently record which
revisions of which files were used in creating a
software distribution. The cccchhhheeeecccckkkkoooouuuutttt, eeeexxxxppppoooorrrrtttt and uuuuppppddddaaaatttteeee
commands allow you to extract an exact copy of a tagged
release at any time in the future, regardless of
whether files have been changed, added, or removed
since the release was tagged.
Page 21 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
You can use the standard ----rrrr and ----DDDD options to tag only
those files that already contain a certain tag. This
method would be used to rename a tag: tag only the
files identified by the old tag, then delete the old
tag, leaving the new tag on exactly the same files as
the old tag.
Specifying the ----ffff flag in addition to the ----rrrr or ----DDDD
flags will tag those files named on the command line
even if they do not contain the old tag or did not
exist on the specified date.
By default (without a ----rrrr or ----DDDD flag) the versions to be
tagged are supplied implicitly by the ccccvvvvssss records of
your working files' history rather than applied
explicitly.
If you use `ccccvvvvssss ttttaaaagggg ----dddd _s_y_m_b_o_l_i_c__t_a_g............', the symbolic
tag you specify is _d_e_l_e_t_e_d instead of being added.
_W_a_r_n_i_n_g: Be very certain of your ground before you
delete a tag; doing this effectively discards some
historical information, which may later turn out to
have been valuable.
`ccccvvvvssss ttttaaaagggg' will not move a tag that already exists.
With the ----FFFF option, however, `ccccvvvvssss ttttaaaagggg' will re-locate
any instance of _s_y_m_b_o_l_i_c__t_a_g that already exists on
that file to the new repository versions. Without the
----FFFF option, attempting to use `ccccvvvvssss ttttaaaagggg' to apply a tag
that already exists on that file will produce an error
message.
The ----bbbb option makes the tag a ``branch'' tag, allowing
concurrent, isolated development. This is most useful
for creating a patch to a previously released software
distribution.
Normally, ttttaaaagggg executes recursively through
subdirectories; you can prevent this by using the
standard ----llll option, or specify the recursion explicitly
by using ----RRRR.
uuuuppppddddaaaatttteeee [----AAAAddddffffllllPPPPppppQQQQqqqqRRRR] [----dddd] [----rrrr _t_a_g|----DDDD _d_a_t_e] _f_i_l_e_s...
_R_e_q_u_i_r_e_s: repository, working directory.
_C_h_a_n_g_e_s: working directory.
After you've run cccchhhheeeecccckkkkoooouuuutttt to create your private copy
of source from the common repository, other developers
will continue changing the central source. From time
to time, when it is convenient in your development
process, you can use the uuuuppppddddaaaatttteeee command from within
your working directory to reconcile your work with any
revisions applied to the source repository since your
Page 22 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
last cccchhhheeeecccckkkkoooouuuutttt or uuuuppppddddaaaatttteeee.
uuuuppppddddaaaatttteeee keeps you informed of its progress by printing a
line for each file, prefaced with one of the characters
`UUUU AAAA RRRR MMMM CCCC ????' to indicate the status of the file:
UUUU _f_i_l_e The file was brought _u_p _t_o _d_a_t_e with respect to
the repository. This is done for any file that
exists in the repository but not in your source,
and for files that you haven't changed but are not
the most recent versions available in the
repository.
AAAA _f_i_l_e The file has been _a_d_d_e_d to your private copy of
the sources, and will be added to the source
repository when you run `ccccvvvvssss ccccoooommmmmmmmiiiitttt' on the file.
This is a reminder to you that the file needs to
be committed.
RRRR _f_i_l_e The file has been _r_e_m_o_v_e_d from your private copy
of the sources, and will be removed from the
source repository when you run `ccccvvvvssss ccccoooommmmmmmmiiiitttt' on the
file. This is a reminder to you that the file
needs to be committed.
MMMM _f_i_l_e The file is _m_o_d_i_f_i_e_d in your working directory.
`MMMM' can indicate one of two states for a file
you're working on: either there were no
modifications to the same file in the repository,
so that your file remains as you last saw it; or
there were modifications in the repository as well
as in your copy, but they were _m_e_r_g_e_d
successfully, without conflict, in your working
directory.
CCCC _f_i_l_e A _c_o_n_f_l_i_c_t was detected while trying to merge your
changes to _f_i_l_e with changes from the source
repository. _f_i_l_e (the copy in your working
directory) is now the result of merging the two
versions; an unmodified copy of your file is also
in your working directory, with the name
`....####_f_i_l_e...._v_e_r_s_i_o_n', where _v_e_r_s_i_o_n is the revision
that your modified file started from. (Note that
some systems automatically purge files that begin
with `....####' if they have not been accessed for a
few days. If you intend to keep a copy of your
original file, it is a very good idea to rename
it.)
???? _f_i_l_e _f_i_l_e is in your working directory, but does not
correspond to anything in the source repository,
and is not in the list of files for ccccvvvvssss to ignore
Page 23 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
(see the description of the ----IIII option).
Use the ----AAAA option to reset any sticky tags, dates, or
----kkkk options. (If you get a working copy of a file by
using one of the ----rrrr, ----DDDD, or ----kkkk options, ccccvvvvssss remembers
the corresponding tag, date, or _k_f_l_a_g and continues
using it on future updates; use the ----AAAA option to make
ccccvvvvssss forget these specifications, and retrieve the
``head'' version of the file).
The ----jjjj_b_r_a_n_c_h option merges the changes made between the
resulting revision and the revision that it is based on
(e.g., if the tag refers to a branch, ccccvvvvssss will merge
all changes made in that branch into your working
file).
With two ----jjjj options, ccccvvvvssss will merge in the changes
between the two respective revisions. This can be used
to ``remove'' a certain delta from your working file.
E.g., If the file foo.c is based on revision 1.6 and I
want to remove the changes made between 1.3 and 1.5, I
might do:
eeeexxxxaaaammmmpppplllleeee%%%% ccccvvvvssss uuuuppppddddaaaatttteeee ----jjjj1111....5555 ----jjjj1111....3333 ffffoooooooo....cccc #### nnnnooootttteeee tttthhhheeee oooorrrrddddeeeerrrr............
In addition, each ----jjjj option can contain on optional
date specification which, when used with branches, can
limit the chosen revision to one within a specific
date. An optional date is specified by adding a colon
(:) to the tag.
----jjjjSSSSyyyymmmmbbbboooolllliiiicccc____TTTTaaaagggg::::DDDDaaaatttteeee____SSSSppppeeeecccciiiiffffiiiieeeerrrr
Use the ----dddd option to create any directories that exist
in the repository if they're missing from the working
directory. (Normally, update acts only on directories
and files that were already enrolled in your working
directory.) This is useful for updating directories
that were created in the repository since the initial
cccchhhheeeecccckkkkoooouuuutttt; but it has an unfortunate side effect. If
you deliberately avoided certain directories in the
repository when you created your working directory
(either through use of a module name or by listing
explicitly the files and directories you wanted on the
command line), then updating with ----dddd will create those
directories, which may not be what you want.
Use ----IIII _n_a_m_e to ignore files whose names match _n_a_m_e (in
your working directory) during the update. You can
specify ----IIII more than once on the command line to
specify several files to ignore. By default, uuuuppppddddaaaatttteeee
ignores files whose names match certain patterns; for
Page 24 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
an up to date list of ignored file names, see the
Cederqvist manual (as described in the SEE ALSO section
of this manpage).
Use `----IIII !!!!' to avoid ignoring any files at all.
The standard ccccvvvvssss command options ----ffff, ----kkkk, ----llll, ----PPPP, ----pppp,
and ----rrrr are also available with uuuuppppddddaaaatttteeee.
FFFFIIIILLLLEEEESSSS
For more detailed information on ccccvvvvssss supporting files, see
ccccvvvvssss(5555).
_F_i_l_e_s _i_n _h_o_m_e _d_i_r_e_c_t_o_r_i_e_s:
.cvsrc
The ccccvvvvssss initialisation file. Lines in this file can be
used to specify default options for each ccccvvvvssss command.
For example the line `ddddiiiiffffffff ----cccc' will ensure that `ccccvvvvssss
ddddiiiiffffffff' is always passed the ----cccc option in addition to any
other options passed on the command line.
.cvswrappers
Specifies wrappers to be used in addition to those
specified in the CVSROOT/cvswrappers file in the
repository.
_F_i_l_e_s _i_n _w_o_r_k_i_n_g _d_i_r_e_c_t_o_r_i_e_s:
CVS A directory of ccccvvvvssss administrative files. _D_o _n_o_t
_d_e_l_e_t_e.
CVS/Entries
List and status of files in your working directory.
CVS/Entries.Backup
A backup of `CCCCVVVVSSSS////EEEEnnnnttttrrrriiiieeeessss'.
CVS/Entries.Static
Flag: do not add more entries on `ccccvvvvssss uuuuppppddddaaaatttteeee'.
CVS/Root
Pathname to the repository ( CVSROOT ) location at the
time of checkout. This file is used instead of the
CVSROOT environment variable if the environment
variable is not set. A warning message will be issued
when the contents of this file and the CVSROOT
environment variable differ. The file may be over-
ridden by the presence of the CVS_IGNORE_REMOTE_ROOT
environment variable.
CVS/Repository
Page 25 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
Pathname to the corresponding directory in the source
repository.
CVS/Tag
Contains the per-directory ``sticky'' tag or date
information. This file is created/updated when you
specify ----rrrr or ----DDDD to the cccchhhheeeecccckkkkoooouuuutttt or uuuuppppddddaaaatttteeee commands,
and no files are specified.
CVS/Checkin.prog
Name of program to run on `ccccvvvvssss ccccoooommmmmmmmiiiitttt'.
CVS/Update.prog
Name of program to run on `ccccvvvvssss uuuuppppddddaaaatttteeee'.
_F_i_l_e_s _i_n _s_o_u_r_c_e _r_e_p_o_s_i_t_o_r_i_e_s:
$CVSROOT/CVSROOT
Directory of global administrative files for
repository.
CVSROOT/commitinfo,v
Records programs for filtering `ccccvvvvssss ccccoooommmmmmmmiiiitttt' requests.
CVSROOT/cvswrappers,v
Records ccccvvvvssss wrapper commands to be used when checking
files into and out of the repository. Wrappers allow
the file or directory to be processed on the way in and
out of CVS. The intended uses are many, one possible
use would be to reformat a C file before the file is
checked in, so all of the code in the repository looks
the same.
CVSROOT/editinfo,v
Records programs for editing/validating `ccccvvvvssss ccccoooommmmmmmmiiiitttt'
log entries.
CVSROOT/history
Log file of ccccvvvvssss transactions.
CVSROOT/loginfo,v
Records programs for piping `ccccvvvvssss ccccoooommmmmmmmiiiitttt' log entries.
CVSROOT/modules,v
Definitions for modules in this repository.
CVSROOT/rcsinfo,v
Records pathnames to templates used during a `ccccvvvvssss
ccccoooommmmmmmmiiiitttt' operation.
CVSROOT/taginfo,v
Records programs for validating/logging `ccccvvvvssss ttttaaaagggg' and
Page 26 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
`ccccvvvvssss rrrrttttaaaagggg' operations.
MODULE/Attic
Directory for removed source files.
#cvs.lock
A lock directory created by ccccvvvvssss when doing sensitive
changes to the source repository.
#cvs.tfl._p_i_d
Temporary lock file for repository.
#cvs.rfl._p_i_d
A read lock.
#cvs.wfl._p_i_d
A write lock.
EEEENNNNVVVVIIIIRRRROOOONNNNMMMMEEEENNNNTTTT VVVVAAAARRRRIIIIAAAABBBBLLLLEEEESSSS
CVSROOT
Should contain the full pathname to the root of the ccccvvvvssss
source repository (where the RCS files are kept). This
information must be available to ccccvvvvssss for most commands
to execute; if CVSROOT is not set, or if you wish to
override it for one invocation, you can supply it on
the command line: `ccccvvvvssss ----dddd _c_v_s_r_o_o_t _c_v_s__c_o_m_m_a_n_d............' You
may not need to set CVSROOT if your ccccvvvvssss binary has the
right path compiled in; use `ccccvvvvssss ----vvvv' to display all
compiled-in paths.
CVSREAD
If this is set, cccchhhheeeecccckkkkoooouuuutttt and uuuuppppddddaaaatttteeee will try hard to
make the files in your working directory read-only.
When this is not set, the default behavior is to permit
modification of your working files.
RCSBIN
Specifies the full pathname where to find RCS programs,
such as ccccoooo(1111) and cccciiii(1111) (CVS 1.9 and older).
CVSEDITOR
Specifies the program to use for recording log messages
during ccccoooommmmmmmmiiiitttt. If not set, the EDITOR environment
variable is used instead. If EDITOR is not set either,
the default is ////uuuussssrrrr////uuuuccccbbbb////vvvviiii.
CVS_IGNORE_REMOTE_ROOT
If this variable is set then ccccvvvvssss will ignore all
references to remote repositories in the CVS/Root file.
CVS_RSH
ccccvvvvssss uses the contents of this variable to determine the
Page 27 (printed 2/3/99)
CCCCVVVVSSSS((((1111)))) UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV CCCCVVVVSSSS((((1111))))
name of the remote shell command to use when starting a
ccccvvvvssss server. If this variable is not set then `rrrrsssshhhh' is
used.
CVS_SERVER
ccccvvvvssss uses the contents of this variable to determine the
name of the ccccvvvvssss server command. If this variable is
not set then `ccccvvvvssss' is used.
CVSWRAPPERS
This variable is used by the `ccccvvvvsssswwwwrrrraaaappppppppeeeerrrrssss' script to
determine the name of the wrapper file, in addition to
the wrappers defaults contained in the repository
(CVSROOT/cvswrappers) and the user's home directory
(~/.cvswrappers).
AAAAUUUUTTTTHHHHOOOORRRRSSSS
Dick Grune
Original author of the ccccvvvvssss shell script version posted
to ccccoooommmmpppp....ssssoooouuuurrrrcccceeeessss....uuuunnnniiiixxxx in the volume6 release of
December, 1986. Credited with much of the ccccvvvvssss conflict
resolution algorithms.
Brian Berliner
Coder and designer of the ccccvvvvssss program itself in April,
1989, based on the original work done by Dick.
Jeff Polk
Helped Brian with the design of the ccccvvvvssss module and
vendor branch support and author of the cccchhhheeeecccckkkkiiiinnnn(1111)
shell script (the ancestor of `ccccvvvvssss iiiimmmmppppoooorrrrtttt').
And many others too numerous to mention here.
SSSSEEEEEEEE AAAALLLLSSSSOOOO
The most comprehensive manual for CVS is Version Management
with CVS by Per Cederqvist et al. Depending on your system,
you may be able to get it with the iiiinnnnffffoooo ccccvvvvssss command or it
may be available as cvs.ps (postscript), cvs.texinfo
(texinfo source), or cvs.html.
For CVS updates, more information on documentation, software
related to CVS, development of CVS, and more, see:
hhhhttttttttpppp::::////////wwwwwwwwwwww....ccccyyyycccclllliiiicccc....ccccoooommmm
hhhhttttttttpppp::::////////wwwwwwwwwwww....lllloooorrrriiiiaaaa....ffffrrrr////~~~~mmmmoooolllllllliiii////ccccvvvvssss----iiiinnnnddddeeeexxxx....hhhhttttmmmmllll
cccciiii(1111), ccccoooo(1111), ccccvvvvssss(5555), ccccvvvvssssbbbbuuuugggg(8888), ddddiiiiffffffff(1111), ggggrrrreeeepppp(1111), ppppaaaattttcccchhhh(1111),
rrrrccccssss(1111), rrrrccccssssddddiiiiffffffff(1111), rrrrccccssssmmmmeeeerrrrggggeeee(1111), rrrrlllloooogggg(1111).
Page 28 (printed 2/3/99)